package com.opengms.HydroModelsIntegration.Dao;

import com.opengms.HydroModelsIntegration.Config.MigratoryModelServiceConfig;
import com.opengms.HydroModelsIntegration.Config.ModelServiceConfig;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

import java.util.List;

/**
 * @Author: David.Xiao
 * @Date: 2019/2/26 19:51
 * @Description:
 */
@Component
public class ModelServiceConfiger {
    /**
     * 全局配置文件的路径，已存在的模型服务
     */
    private final String modelServiceConfigPath = this.getClass().getResource("/").getPath()+"\\ModelService.properties";

    /**
     * 全局配置文件的路径，待迁移的模型服务
     */
    private final String migratoryModelServiceConfigPath = this.getClass().getResource("/").getPath()+"\\MigratoryModelService.properties";


    /**
     * 全局配置文件，用户关心的模型服务匹配信息
     */
    private String enviroMatchFile;

    /**
     * 用户私有的原始输入数据文件夹
     */
    private String pRawInputFile;

    /**
     * 用户私有的修正后的输入数据文件夹
     */
    private  String pModifiedInputFile;

    /**
     * 用户私有的输出数据文件夹
     */
    private  String pOutputDataFile;

    /**
     * 用户私有的配置文件的文件夹
     */
    private String pConfigFile;

    /**
     * 用户私有的原始输入数据全路径
     */
    private String pRawInputDataFullPath;

    /**
     * 用户私有的修正后的输入数据全路径
     */
    private String pModifiedInputDataFullPath;

    /**
     * 用户私有的输出数据文件全路径
     */
    private String pOutputDataFullPath;

    /**
     * 输出数据的urlList
     */
    private List<String> outputUrlList;
    /**
     * 全局配置文件，已存在的模型服务信息
     */
    @Autowired
    @Qualifier(value = "modelServiceConfig")
    ModelServiceConfig modelServiceConfig;
    public ModelServiceConfig getModelServiceConfig() {
        return modelServiceConfig;
    }

    /**
     * 全局配置文件，待迁移的模型服务信息
     */
    @Autowired
    @Qualifier(value = "migratoryModelServiceConfig")
    MigratoryModelServiceConfig migratoryModelServiceConfig;
    public MigratoryModelServiceConfig getMigratoryModelServiceConfig() {
        return migratoryModelServiceConfig;
    }

    /**
     * 全局配置文件中的参数列表，已存在的模型服务
     */
    private List<String> globalUrls;
    private List<String> globalGuids;
    private List<String> globalWrapperIds;
    private List<String> globalPids;

    /**
     * 全局配置文件中的参数列表，待迁移的模型服务
     */
    private List<String> globalMigtatoryUrls;
    private List<String> globalMigtatoryGuids;
    private List<String> globalMigtatoryWrapperIds;
    private List<String> globalMigtatoryPids;
}
